---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: openstackmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: OpenStackMachineClass
    plural: openstackmachineclasses
    singular: openstackmachineclass
    shortNames:
    - oscls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Flavor
          type: string
          jsonPath: .spec.flavorName
        - name: Image
          type: string
          jsonPath: .spec.imageName
        - name: Region
          type: string
          priority: 1
          jsonPath: .spec.region
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: awsmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: AWSMachineClass
    plural: awsmachineclasses
    singular: awsmachineclass
    shortNames:
    - awscls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Machine Type
          type: string
          jsonPath: .spec.machineType
        - name: AMI
          type: string
          jsonPath: .spec.ami
        - name: Region
          type: string
          priority: 1
          jsonPath: .spec.region
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: azuremachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: AzureMachineClass
    plural: azuremachineclasses
    singular: azuremachineclass
    shortNames:
    - azurecls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: VM size
          type: string
          jsonPath: .spec.properties.hardwareProfile.vmSize
        - name: Location
          type: string
          priority: 1
          jsonPath: .spec.location
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: vspheremachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: VsphereMachineClass
    plural: vspheremachineclasses
    singular: vspheremachineclass
    shortNames:
    - vspherecls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: gcpmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: GCPMachineClass
    plural: gcpmachineclasses
    singular: gcpmachineclass
    shortNames:
    - gcpcls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Machine Type
          type: string
          jsonPath: .spec.machineType
        - name: Region
          type: string
          priority: 1
          jsonPath: .spec.region
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: alicloudmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: AlicloudMachineClass
    plural: alicloudmachineclasses
    singular: alicloudmachineclass
    shortNames:
    - alicloudcls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Instance Type
          type: string
          jsonPath: .spec.instanceType
        - name: Region
          type: string
          priority: 1
          jsonPath: .spec.region
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: yandexmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: YandexMachineClass
    plural: yandexmachineclasses
    singular: yandexmachineclass
    shortNames:
      - yandexcls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Region
          type: string
          priority: 1
          jsonPath: .spec.region
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: packetmachineclasses.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: PacketMachineClass
    plural: packetmachineclasses
    singular: packetmachineclass
    shortNames:
    - packetcls
  versions:
    - name: v1alpha1
      served: true
      storage: true
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: machines.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: Machine
    plural: machines
    singular: machine
    shortNames:
    - mach
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Status
          type: string
          description: Current status of the machine.
          jsonPath: .status.currentStatus.phase
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: machinesets.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: MachineSet
    plural: machinesets
    singular: machineset
    shortNames:
    - machset
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Desired
          type: integer
          description: Number of desired replicas.
          jsonPath: .spec.replicas
        - name: Current
          type: integer
          description: Number of actual replicas.
          jsonPath: .status.replicas
        - name: Ready
          type: integer
          description: Number of ready replicas for this machine set.
          jsonPath: .status.readyReplicas
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true

---

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: machinedeployments.machine.sapcloud.io
  labels:
    heritage: deckhouse
    module: node-manager
    app: machine-controller-manager
spec:
  group: machine.sapcloud.io
  scope: Namespaced
  names:
    kind: MachineDeployment
    plural: machinedeployments
    singular: machinedeployment
    shortNames:
    - machdeploy
  versions:
    - name: v1alpha1
      served: true
      storage: true
      additionalPrinterColumns:
        - name: Ready
          type: integer
          description: Total number of ready machines targeted by this machine deployment.
          jsonPath: .status.readyReplicas
        - name: Desired
          type: integer
          description: Number of desired machines.
          jsonPath: .spec.replicas
        - name: Up-to-date
          type: integer
          description: Total number of non-terminated machines targeted by this machine deployment that have the desired template spec.
          jsonPath: .status.updatedReplicas
        - name: Available
          type: integer
          description: Total number of available machines (ready for at least minReadySeconds) targeted by this machine deployment.
          jsonPath: .status.availableReplicas
        - name: Age
          type: date
          description: >
            CreationTimestamp is a timestamp representing the server time when this object was created.
            It is not guaranteed to be set in happens-before order across separate operations.
            Clients may not set this value. It is represented in RFC3339 form and is in UTC.
            Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          jsonPath: .metadata.creationTimestamp
      subresources:
        status: {}
      schema:
        openAPIV3Schema:
          type: object
          x-kubernetes-preserve-unknown-fields: true
